[INFO] fetching crate stm32l1xx-hal 0.1.0...
[INFO] checking stm32l1xx-hal-0.1.0 against master#e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682 for beta-170-4
[INFO] extracting crate stm32l1xx-hal 0.1.0 into /workspace/builds/worker-6-tc2/source
[INFO] validating manifest of crates.io crate stm32l1xx-hal 0.1.0 on toolchain e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-6-tc2/source/.cargo/config
[INFO] started tweaking crates.io crate stm32l1xx-hal 0.1.0
[INFO] finished tweaking crates.io crate stm32l1xx-hal 0.1.0
[INFO] tweaked toml for crates.io crate stm32l1xx-hal 0.1.0 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] crate crates.io crate stm32l1xx-hal 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 43576c8ed1ea2c2eb590047639a03f73c3dec2b8b9e531fc5b4c1998fdadc495
[INFO] running `Command { std: "docker" "start" "-a" "43576c8ed1ea2c2eb590047639a03f73c3dec2b8b9e531fc5b4c1998fdadc495", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "43576c8ed1ea2c2eb590047639a03f73c3dec2b8b9e531fc5b4c1998fdadc495", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "43576c8ed1ea2c2eb590047639a03f73c3dec2b8b9e531fc5b4c1998fdadc495", kill_on_drop: false }`
[INFO] [stdout] 43576c8ed1ea2c2eb590047639a03f73c3dec2b8b9e531fc5b4c1998fdadc495
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] db19cf8cc09ef5804efca5b52917fba1117bd1f5c5336be1b0608a9e7543174e
[INFO] running `Command { std: "docker" "start" "-a" "db19cf8cc09ef5804efca5b52917fba1117bd1f5c5336be1b0608a9e7543174e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v0.4.24
[INFO] [stderr]    Compiling rand_core v0.3.0
[INFO] [stderr]    Compiling cortex-m v0.5.8
[INFO] [stderr]     Checking vcell v0.1.0
[INFO] [stderr]     Checking aligned v0.2.0
[INFO] [stderr]    Compiling cortex-m-rt v0.6.7
[INFO] [stderr]    Compiling typenum v1.10.0
[INFO] [stderr]     Checking r0 v0.2.2
[INFO] [stderr]     Checking byteorder v1.2.7
[INFO] [stderr]    Compiling stm32l1 v0.5.0
[INFO] [stderr]    Compiling cortex-m-semihosting v0.3.2
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]     Checking nb v0.1.1
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling cortex-m-rtfm v0.4.2
[INFO] [stderr]    Compiling bare-metal v0.2.4
[INFO] [stderr]     Checking volatile-register v0.2.0
[INFO] [stderr]     Checking cast v0.2.2
[INFO] [stderr]     Checking embedded-hal v0.2.3
[INFO] [stderr]    Compiling rand_core v0.2.2
[INFO] [stderr]     Checking hash32 v0.1.0
[INFO] [stderr]    Compiling rand v0.5.5
[INFO] [stderr]     Checking panic-semihosting v0.5.1
[INFO] [stderr]    Compiling quote v0.6.10
[INFO] [stderr]    Compiling syn v0.15.23
[INFO] [stderr]     Checking generic-array v0.11.1
[INFO] [stderr]     Checking heapless v0.4.1
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.1.5
[INFO] [stderr]    Compiling owned-singleton-macros v0.1.0
[INFO] [stderr]    Compiling cortex-m-rtfm-macros v0.4.2
[INFO] [stderr]     Checking owned-singleton v0.1.0
[INFO] [stderr]     Checking stm32l1xx-hal v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 401 | / gpio!(GPIOA, gpioa, gpiopaen, PA, [
[INFO] [stdout] 402 | |     PA0: (pa0, 0, Input<Floating>),
[INFO] [stdout] 403 | |     PA1: (pa1, 1, Input<Floating>),
[INFO] [stdout] 404 | |     PA2: (pa2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     PA15: (pa15, 15, Input<Floating>),
[INFO] [stdout] 418 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 420 | / gpio!(GPIOB, gpiob, gpiopben, PB, [
[INFO] [stdout] 421 | |     PB0: (pb0, 0, Input<Floating>),
[INFO] [stdout] 422 | |     PB1: (pb1, 1, Input<Floating>),
[INFO] [stdout] 423 | |     PB2: (pb2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 436 | |     PB15: (pb15, 15, Input<Floating>),
[INFO] [stdout] 437 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 439 | / gpio!(GPIOC, gpioc, gpiopcen, PC, [
[INFO] [stdout] 440 | |     PC0: (pc0, 0, Input<Floating>),
[INFO] [stdout] 441 | |     PC1: (pc1, 1, Input<Floating>),
[INFO] [stdout] 442 | |     PC2: (pc2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 455 | |     PC15: (pc15, 15, Input<Floating>),
[INFO] [stdout] 456 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 458 | / gpio!(GPIOD, gpiod, gpiopden, PD, [
[INFO] [stdout] 459 | |     PD0: (pd0, 0, Input<Floating>),
[INFO] [stdout] 460 | |     PD1: (pd1, 1, Input<Floating>),
[INFO] [stdout] 461 | |     PD2: (pd2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |     PD15: (pd15, 15, Input<Floating>),
[INFO] [stdout] 475 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 478 | / gpio!(GPIOE, gpioe, gpiopeen, PE, [
[INFO] [stdout] 479 | |     PE0: (pe0, 0, Input<Floating>),
[INFO] [stdout] 480 | |     PE1: (pe1, 1, Input<Floating>),
[INFO] [stdout] 481 | |     PE2: (pe2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 494 | |     PE15: (pe15, 15, Input<Floating>),
[INFO] [stdout] 495 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 498 | / gpio!(GPIOF, gpiof, gpiopfen, PF, [
[INFO] [stdout] 499 | |     PF0: (pf0, 0, Input<Floating>),
[INFO] [stdout] 500 | |     PF1: (pf1, 1, Input<Floating>),
[INFO] [stdout] 501 | |     PF2: (pf2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     PF15: (pf15, 15, Input<Floating>),
[INFO] [stdout] 515 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 518 | / gpio!(GPIOG, gpiog, gpiopgen, PG, [
[INFO] [stdout] 519 | |     PG0: (pg0, 0, Input<Floating>),
[INFO] [stdout] 520 | |     PG1: (pg1, 1, Input<Floating>),
[INFO] [stdout] 521 | |     PG2: (pg2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 534 | |     PG15: (pg15, 15, Input<Floating>),
[INFO] [stdout] 535 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:181:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 182 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 183 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 198 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 199 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 197 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 214 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 215 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 213 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:229:29
[INFO] [stdout]     |
[INFO] [stdout] 229 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 230 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 231 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 229 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:232:29
[INFO] [stdout]     |
[INFO] [stdout] 232 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 233 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 234 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:245:29
[INFO] [stdout]     |
[INFO] [stdout] 245 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 246 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 247 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 245 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 249 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 250 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 248 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:29
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 265 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 266 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 264 |                             let _ = &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:267:29
[INFO] [stdout]     |
[INFO] [stdout] 267 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 268 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 269 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 267 |                             let _ = &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:295:33
[INFO] [stdout]     |
[INFO] [stdout] 295 | /                                 &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 296 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 297 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 295 |                                 let _ = &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | /                                 &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 301 | |                                     w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 302 | |                                 });
[INFO] [stdout]     | |__________________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 300 |                                 let _ = &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 305 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 306 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 538 | / gpio!(GPIOH, gpioh, gpiophen, PH, [
[INFO] [stdout] 539 | |     PH0: (ph0, 0, Input<Floating>),
[INFO] [stdout] 540 | |     PH1: (ph1, 1, Input<Floating>),
[INFO] [stdout] 541 | |     PH2: (ph2, 2, Input<Floating>),
[INFO] [stdout] ...   |
[INFO] [stdout] 554 | |     PH15: (ph15, 15, Input<Floating>),
[INFO] [stdout] 555 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 304 |                             let _ = &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 96 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 96 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `spi`
[INFO] [stdout]   --> examples/touch.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | use hal::{spi, stm32};
[INFO] [stdout]    |           ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> examples/rtfm.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![feature(custom_attribute)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: removed in favor of `#![register_tool]` and `#![register_attr]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "touch") due to 2 previous errors; 1 warning emitted
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "spi") due to 2 previous errors
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "i2c") due to 2 previous errors
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "qei") due to 2 previous errors
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "dac") due to 2 previous errors
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "watchdog") due to 2 previous errors
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "itm") due to 2 previous errors
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "hello") due to 2 previous errors
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "blinky_timer") due to 2 previous errors
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "button_irq") due to 2 previous errors
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0557`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "blinky_delay") due to 2 previous errors
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "rtfm") due to 3 previous errors
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "adc_pwm") due to 2 previous errors
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "button") due to 2 previous errors
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "blinky") due to 2 previous errors
[INFO] [stderr] error: could not compile `stm32l1xx-hal` (example "pwm") due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "db19cf8cc09ef5804efca5b52917fba1117bd1f5c5336be1b0608a9e7543174e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db19cf8cc09ef5804efca5b52917fba1117bd1f5c5336be1b0608a9e7543174e", kill_on_drop: false }`
[INFO] [stdout] db19cf8cc09ef5804efca5b52917fba1117bd1f5c5336be1b0608a9e7543174e
